package net.maku.project.vo;


import com.fhs.core.trans.anno.Trans;
import com.fhs.core.trans.constant.TransType;
import com.fhs.core.trans.vo.TransPojo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import net.maku.project.entity.InfoEntity;
import net.maku.project.entity.ProcessStepsEntity;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @FileName: StepDetailVO
 * @Project: maku-boot-zzhl
 * @Package: net.maku.project.vo
 * @Author: Aili
 * @Date: 2024/7/23 1:42
 * @Version: 1.0.0
 * @Description: StepDetailVO Description
 */
@Data
public class StepDetailVO implements TransPojo, Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    @Schema(description = "id")
    private Long id;

    /**
     * 项目id
     */
    @Schema(description = "项目id")
    @Trans(type = TransType.SIMPLE, target = InfoEntity.class, uniqueField = "id", fields = "projectName", ref = "projectName")
    private Long projectId;

    /**
     * 项目名称
     */
    @Schema(description = "项目名称")
    private String projectName;

    /**
     * 环节id
     */
    @Schema(description = "环节id")
    @Trans(type = TransType.SIMPLE, target = ProcessStepsEntity.class, uniqueField = "id", fields = "name", ref = "stepName")
    private Long stepId;

    /**
     * 环节名称
     */
    @Schema(description = "环节名称")
    private String stepName;

    /**
     * 变更状态
     */
    @Schema(description = "变更状态")
    private String status;

    /**
     * 材料提交情况
     */
    @Schema(description = "材料提交情况")
    private String matlConfirm;

    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;

    /**
     * 创建人
     */
    @Schema(description = "创建人")
    private String creator;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    private LocalDateTime createTime;
}
